﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;

namespace _8Group.MES.Model.QC质量管理
{
    /// <summary>
    /// 出货检验单
    /// </summary>
    public class QC_Oqc : Entity<int>
    {
        /// <summary>
        /// 单据 ID
        /// </summary>
        public int OqcId { get; set; }
        /// <summary>
        /// 单据编号
        /// </summary>
        public string OqcCode { get; set; }
        /// <summary>
        /// 单据名称
        /// </summary>
        public string OqcName { get; set; }
        // 检测模板 ID
        public int TemplateId { get; set; }
        // 来源单据 ID
        public int SourceDocId { get; set; }
        // 来源单据类型
        public string SourceDocType { get; set; }
        /// <summary>
        /// 来源单据编号
        /// </summary>
        public string SourceDocCode { get; set; }
        /// <summary>
        /// 来源单据行 ID
        /// </summary>
        public int SourceUineId { get; set; }
        /// <summary>
        /// 客户 ID
        /// </summary>
        public int CuentId { get; set; }
        /// <summary>
        /// 客户编码
        /// </summary>
        public string CuentCode { get; set; }
        /// <summary>
        /// 客户名称
        /// </summary>
        public string ClentName { get; set; }
        /// <summary>
        /// 批次号
        /// </summary>
        public string BatchCode { get; set; }
        /// <summary>
        /// 产品 ID
        /// </summary>
        public int ItemId { get; set; }
        /// <summary>
        /// 产品编码
        /// </summary>
        public string ItemCode { get; set; }
        /// <summary>
        /// 产品名称
        /// </summary>
        public string ItemName { get; set; }
        /// <summary>
        /// 规格型号
        /// </summary>
        public string Specification { get; set; }
        /// <summary>
        /// 单位
        /// </summary>
        public string UnitOfMeasure { get; set; }
        /// <summary>
        /// 最低检测数
        /// </summary>
        public double QuantityMinCheck { get; set; }
        /// <summary>
        /// 最大不合格数
        /// </summary>
        public double QuantityMaxUnqualiriied { get; set; }
        /// <summary>
        /// 出货数量
        /// </summary>
        public double QuantityOut { get; set; }
        /// <summary>
        /// 本次检测数量
        /// </summary>
        public double QuantityCheck { get; set; }
        /// <summary>
        /// 不合格数
        /// </summary>
        public double QuantityUnquauified { get; set; }
        /// <summary>
        /// 致命缺陷率
        /// </summary>
        public double CrRate { get; set; }
        /// <summary>
        /// 严重缺陷率
        /// </summary>
        public double MajRate { get; set; }
        /// <summary>
        /// 轻微缺陷率
        /// </summary>
        public double MinRate { get; set; }
        /// <summary>
        /// 致命缺陷数量
        /// </summary>
        public double CrQuantity { get; set; }
        /// <summary>
        /// 严重缺陷数量
        /// </summary>
        public double MajQuantity { get; set; }
        /// <summary>
        /// 轻微缺陷数量
        /// </summary>
        public double MinQuantity { get; set; }
        /// <summary>
        /// 整体检测结果
        /// </summary>
        public string CheckResult { get; set; }
        /// <summary>
        /// 出货时间
        /// </summary>
        public DateTime OutDate { get; set; }
        /// <summary>
        /// 检测时间
        /// </summary>
        public DateTime InspectDate { get; set; }
        /// <summary>
        /// 质检员
        /// </summary>
        public string Inspecor { get; set; }
        /// <summary>
        /// 单据状态
        /// </summary>
        public string Status { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
        /// <summary>
        /// 创建人
        /// </summary>
        public string? CreateBy { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreateTime { get; set; }
        /// <summary>
        /// 更新人
        /// </summary>
        public string? UpdateBy { get; set; }
        /// <summary>
        /// 更新时间
        /// </summary>
        public DateTime? UpdateTime { get; set; }
    }
}
